Chargement des librairies

Chargement des données brutes

Transformation

  • Transformation log2 centré et mise à l’échelle interquartile pour CPMG et NOESY
  • Transformation CLR pour OTU (log et centré = center log ratio)
    cf code html métabo

Diablo sur données tabagique

Valable pour toutes les analyses Attention dans matrice on pourrait supposer que Design de matrice = 0 car pas d’apriori sur les données. Pas de lien connu entre OTU et métabo.
Or d’après S.Dejeean il ne sait pas ce que mathématiquement cela induit au niveau algo (pour lui ça ne devrait pas changer). Il met 1. En mettant 0 ou 1, le résultat des r dans diablo diffèrent (pplmnt entre OTU et métabo pas les mêmes passe de 0.25 à 0.01). Nécessité d’approfondir.

Pas pris en compte les 2 métabo pour des raisons de convergence d’algo et de réduction de variables mais également de tps d’execution (1 rep = 3h sur 10X, nécéssité de faire 50rep avec des X bcp plus nbrx). Pas le temps d’approfondir les tests pour optimiser. Autre stratégie (vu trop tardivement) détaillé après, avec une optimisation manuelle.

$NOESY
[1] 846  84

$OTU
[1] 846 997
  1   2   3 
168 442 236 
      NOESY OTU
NOESY     0   1
OTU       1   0

Tuning the number of components

Attention toujours remettre dans le contexte biologique. Attendons-nous un taux d’erreur élevé ou P/R aux données ce n’est pas illogique? Pour moi, simple intuition car pas fait de biblio, on ne s’attend pas à des résultats différents entre variables peut-être parce que les patients sont en bonne santé. Dans le cas contraire, j’aurai imaginé des microbiotes et métabo différents en fonction du statut patho.

Diablo_total

Diablo_total

D’après le graph, le taux d’erreur (ER :error rate ) et le taux d’erreur global équilibré/moyenné (BER : balanced error rate) est minimale soit à 3 composantes pour ER soit à 10 composantes avec BER.La distance max semble donner une meilleure précision.
Le BER est utilisé quand très fort déséquilibre entre les catégories (ex 5% de malades). Ici on peut donc choisir ER.

D’après la fonction choice.ncomp :

Considering this distance and the BER, the output $choice.ncomp indicates an optimal number of components for the final DIABLO model. Il s’avère que c’est 1 probablement du à un écart type plus petit.

Simulation du KeepX

Prend énormément de temps.
Possibilité de faire des tests manuels en faisant varier le keepX à 1%-10-25-50 et 75%.
tout dépend ce que l’on souhaite. Peu de variables ou au contraire un nbre plus important. Pas figé car certaines data ont besoin de peu de variables pour voir une clusterisation. Au contraire, d’autre c’est l’inverse.

Si test effectué sur données assignées avec:
- Noesy et CPMG +OTU alors Noesy et CPMG =1 OTU sur ncomp= 4, 15 rep OTU = 12,2,75,1
- Noesy+OTU=rep20 Noesy ; 40 55 40 40 18 18 8 3 2 1 et OTU :95 35 105 75 1 16 2 1 1 6

      NOESY OTU Y
NOESY     0   1 1
OTU       1   0 1
Y         1   1 0

Plot Diablo

Plot Indiv

Plot Contribution

Plot Arrow

Plot Circle

Circos Plot

Pour l’exemple nécéssité de prendre un cutoff très bas.

Network

Network_NOESY_OTU_tabac

Network_NOESY_OTU_tabac

Diablo sur données Sex

$NOESY
[1] 846 215

$CPMG
[1] 846 202

$OTU
[1] 846 997
  1   2 
433 413 
      NOESY CPMG OTU
NOESY   0.0  0.9   1
CPMG    0.9  0.0   1
OTU     1.0  1.0   0


##Tuning the number of components

Diablo_total

Diablo_total

D’après le graph, le taux d’erreur (ER :error rate ) et le taux d’erreur global équilibré/moyenné (BER : balanced error rate) diminue à 1 et/ou 4 composantes.La distance max semble donner une meilleure précision.

D’après la fonction choice.ncomp :

Considering this distance and the BER, the output $choice.ncomp indicates an optimal number of components for the final DIABLO model.
Il s’avère que c’est 1 probablement du à un écart type plus petit. Cependant nous allons prendre 4 dimensions

Test KeepX


Quelque soit les tests réalisés avec les composantes de 4 ou 7 avec des valeurs tests de keepx c(1:9, seq(10, 18, 2), seq(20,50,5), seq(55,105,10)) et 50 répétitions nous obtenons les valeurs suivantes: noesy et CPMG toujours = 1,1,1,1 OTU variable mais dans ce cas =14,2,1,1

      NOESY CPMG OTU Y
NOESY   0.0  0.9   1 1
CPMG    0.9  0.0   1 1
OTU     1.0  1.0   0 1
Y       1.0  1.0   1 0

Plot Indiv

Contribution

Plot Arrow

Plot Var

Plot Circos

Network

Code ne fonctionne pas :
Error in coord[[j]][, comp[[blocks[j]]] %in% int.comp] :
nombre de dimensions incorrect
Fonctionne sur 2 omics (sans CPMG par exemple)
Il faut donc passer par exemple sur cytoscape afin de voir 3omics

rCCA Regularized Canonical Correlation Analysis

CCA et RCCA ne sont plus employés en intégration sur large jeux de données car ne permet de réduire le nbre de variables (pas de séléction). Notre objectifs est justement de séléctionner certaines variables pour maximiser les interactions. Valable sur 2 omics seulement

[1] 846 215
[1] 846 997

Estimation des paramètres de pénalisations (méthode Cross Validation)

Test différents lambda

lambda1=0 lambda2=0.2 CVscore = 0.2611652

Paramètre_pénalisation

Paramètre_pénalisation

temps d’execution : Time difference of 36.44826 mins lambda1=0 lambda2=10 CVscore = 0.1708556

Paramètre_pénalisation2

Paramètre_pénalisation2

Correlation canonique

Sample plot

Plot Indiv

## Possibilité de faire superposer les graph mais illisible avec le nbre d’échantillons

Variable Plots

Network

Network_NOESY_OTU_sex

Network_NOESY_OTU_sex

Cluster_NOESY_OTU_tabac

Cluster_NOESY_OTU_tabac